import cv2
#一、显示图片
#1.导入库
#2.读取图片
image = cv2.imread('./one01.jpg')

#3.显示图片
cv2.imshow('mei nv',image)

#4.暂停窗口
cv2.waitKey(0)

#5.销毁窗口
cv2.destroyAllWindows()





#二、识别显示图片上面的人脸
# # 1.导入库
# import cv2
#
# # 2.读取图片(需要获取人脸模型)
# image = cv2.imread('one01.jpg')
#
# # 3.加载人脸模型(训练好的人脸认证模型haarcascade_frontalface_default.xml)
# face_mode = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
#
# # 4.图片灰度处理
# gray = cv2.cvtColor(image,cv2.COLOR_RGB2GRAY)
#
# # 5.检测图片人脸
# faces = face_mode.detectMultiScale(gray)
# # 6.标记人脸
# for (x,y,w,h) in faces:
#     #6.1使用矩形来进行标记
#     #1.原始图片2.左上角坐标点3.右下角坐标点4.线框的颜色值5.线宽
#     cv2.rectangle(image,(x,y),(x+w,y+h),(0,255,0),5)
#
# #7.显示图片(mei nv 识别之后的图片名)
# cv2.imshow('mei nv',image)
#
# #8.暂停窗口
# cv2.waitKey(0)
#
# #9.销毁窗口
# cv2.destroyAllWindows()




#三、打开摄像头
#1.导入库
# import cv2
#
# #2.打开摄像头
# capture = cv2.VideoCapture(0)
# #3.获取摄像头的实时画面
# while True:
#
#     #3.1读取每一帧的画面
#     ret, image = capture.read()
#
#     #3.2显示图片
#     cv2.imshow('she xiang tou',image)
#
#     #3.3暂停窗口
#     if cv2.waitKey(5) & 0xFF ==ord('q'):
#         break
#
# #4.释放资源
# capture.release()
#
# #5.销毁窗口
# cv2.destroyAllWindows()
#




#四、使用摄像头来识别人脸
#1.导入库
# import cv2
# # #2.加载人脸模型
# face_mode = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# # #3.打开摄像头
# capture = cv2.VideoCapture(0)
# # #4.获取摄像头的实时画面
# while True:
#     #4.1读取每一帧的画面
#     ret, image = capture.read()
#     #4.2灰度处理
#     gray = cv2.cvtColor(image,cv2.COLOR_RGB2GRAY)
#     #4.3检查人脸
#     # gray, 1.1, 3, 0, (5, 5)
#     faces = face_mode.detectMultiScale(gray)
#     #4.4标记人脸
#     for (x, y, w, h) in faces:
#         # 4.5使用矩形来标记
#         # 1.原始图片2.左上角坐标点3.右下角坐标点4.线框的颜色值5.线宽
#         cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 10)
#     #4.6显示图片
#     cv2.imshow('tu pian',image)
#     #4.7暂停窗口
#     if cv2.waitKey(5) & 0xFF ==ord('q'):
#         break
# #5.释放资源
# capture.release()
# #6.销毁窗口
# cv2.destroyAllWindows()

